#pragma warning(disable : 4996)
#include <stdio.h>
#include <string.h>
#define INF 100
void add(char *a, char *b, int m, int n);
int main()
{
    char m[INF];
    char n[INF];
    int lm, ln;
    while (1)
    {
        gets(m);
        putchar('+');
        gets(n);
        putchar('=');
        lm = strlen(m);
        ln = strlen(n);
        if (lm >= ln)
        {
            add(m, n, lm, ln);
        }
        else
        {
            add(n, m, ln, lm);
        }
    }
}
void add(char *a, char *b, int m, int n)
{

    char sum[INF];
    memset(sum, 0, sizeof(sum));
    int i = m - 1, j = n - 1;
    int flag = 0;
    while (i >= 0 && j >= 0)
    {
        if (a[i] + b[j] + flag > '0' + '9')
        {
            a[i] = (a[i] + b[j] + flag) - 10 - '0';
            flag = 1;
        }
        else
        {
            a[i] = a[i] + b[j] + flag - '0';
            flag = 0;
        }
        --i;
        --j;
    }
    while (i > 0)
    {
        if (a[i] + flag > '9')
        {
            a[i] = '0';
            flag = 1;
            if (a[i - 1] + flag < '9' && i > 0)
            {
                a[i - 1] = a[i - 1] + 1;
                flag = 0;
            }
        }
        else
        {
            a[i] = a[i] + flag;
            flag = 0;
        }
        --i;
    }
    if (1 == flag && 0 == i)
    {
        if (a[i] + flag <= '9')
        {
            a[i] += flag;
            flag = 0;
        }
        else
        {
            a[i] = '0';
            flag = 1;
        }
    }
    i = 0;
    if (1 == flag)
    {
        sum[0] = '1';
        while (i < m)
        {
            sum[i + 1] = a[i];
            ++i;
        }
    }
    else
    {
        while (i < m)
        {
            sum[i] = a[i];
            ++i;
        }
    }
    puts(sum);
}